package com.glink.manage.service;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.glink.manage.domain.LogBean;
import com.glink.manage.dto.log.LogExportDTO;
import com.glink.manage.dto.log.LogPageDTO;
import com.glink.manage.dto.log.LogSaveDTO;
import com.glink.manage.vo.log.LogVO;

/**
 * Created by IntelliJ IDEA.
 *
 * @Author : qiushaoshan
 * @create 2024/6/24 11:12
 */
public interface LogService extends IService<LogBean> {

    /**
     * 分页查询
     * @param pageDTO 查询条件
     * @return 查询结果
     */
    IPage<LogVO> findLogPage(LogPageDTO pageDTO);

    /**
     * 导出日志信息
     * @param exportDTO 导入条件
     * @return 文件路径
     */
    String exportLog(LogExportDTO exportDTO) throws Exception;

    /**
     * 保存日志记录
     *
     * @param userId 用户ID
     * @param saveDTO 保存的信息
     * @return 状态
     */
    Boolean addLogRecord(String userId, LogSaveDTO saveDTO);

    /**
     * 保存日志记录
     * @param userId 用户ID
     * @param userFullName 用户名称
     * @param type 日志类型
     * @param content 日志内容
     * @return 状态
     */
    Boolean addLogRecord(String userId, String userFullName, String type, String content, String ipAddress);
}
